Aspect-oriented state machines

نویسنده

  • Gefei Zhang
چکیده

UML state machines are a widely used language for modeling software behavior. They are considered to be simple and intuitively comprehensible, and are hence one of the most popular languages for modeling reactive components. However, this seeming ease to use vanishes rapidly as soon as the complexity of the system to model increases. In fact, even state machines modeling “almost trivial” behavior may get rather hard to understand and error-prone. In particular, synchronization of parallel regions and history-based features are often difficult to model in UML state machines. We therefore propose High-Level Aspect (HILA), a new, aspect-oriented extension of UML state machines, which can improve the modularity, thus the comprehensibility and reusability of UML state machines considerably. Aspects are used to define additional or alternative system behaviors at certain “interesting” points of time in the execution of the state machine, and achieve a high degree of separation of concerns. The distinguishing feature of HILA w.r.t. other approaches of aspect-oriented state machines is that HILA aspects are defined on a high, i.e. semantic level as opposed to a low, i.e. syntactic level. This semantic approach makes HILA aspects often simpler and better comprehensible than aspects of syntactic approaches. The contributions of this thesis include 1) the abstract and the concrete syntax of HILA, 2) the weaving algorithms showing how the (additional or alternative) behaviors, separately modeled in aspects, are composed with the base state machine, giving the complete behavior of the system, 3) a formal semantics for HILA aspects to define how the aspects are activated and (after the execution) left. We also discuss what conflicts between HILA aspects are possible and how to detect them. The practical applicability of HILA is shown in a case study of a crisis management system.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Towards Aspect-Oriented State Machines

UML state machines provide an operational view of the behavior of software systems. However, properties of the execution history of state machines cannot be expressed modularly. This often leads to model elements addressing the same concern scattered all over the machine. We present an initial approach to aspect-oriented state machines, which show considerably better modularity in designs of hi...

متن کامل

Using aspect-oriented state machines for detecting and resolving feature interactions

Composing different features in a software system may lead to conflicting situations. The presence of one feature may interfere with the correct functionality of another feature, resulting in an incorrect behavior of the system. In this work we present an approach to manage feature interactions. A formal model, using Finite State Machines (FSM) and Aspect-Oriented (AO) technology, is used to sp...

متن کامل

Aspect-Oriented Modeling of Mutual Exclusion in UML State Machines

Mutual exclusion is a very common requirement in parallel systems. Yet its modeling is a tedious task in UML state machines, one of the most popular languages for behavior modeling. We present HiLA, an aspect-oriented extension of UML state machines, to address this problem. In HiLA, mutual exclusion can be modeled in a highly modular and declarative way. That is, the logic of mutual exclusion ...

متن کامل

Aspect-Oriented UI Modeling with State Machines

Separated modeling of User Interface (UI) widgets is a very natural way to tackle the complexity of UI models. Due to interactions between widgets, however, this is not always an easy task. We propose an aspect-oriented approach to widget-oriented UI modeling: each widget’s behavior is modeled separately in a UML state machine; synchronization of the state machines is modeled in aspects and is ...

متن کامل

Modeling the Car Crash Crisis Management System Using HiLA

An aspect-oriented modeling approach to the Car Crash Crisis Management System (CCCMS) using the High-Level Aspect Language (HiLA) is described. HiLA is a language for expressing aspects for UML static structures and UML state machines. In particular, HiLA supports both a static graph transformational and a dynamic approach of applying aspects. Furthermore, it facilitates methodologically turni...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010